/**
 * 全局配置文件
 * 集中管理所有环境配置和API地址
 */

// 判断当前运行环境
const ENV = {
  DEV: 'development',     // 开发环境
  TEST: 'testing',        // 测试环境
  PROD: 'production'      // 生产环境
};

// 当前环境，默认为开发环境
const ENV_TYPE = ENV.DEV;

// 不同环境的服务器地址配置
const API_CONFIG = {
  [ENV.DEV]: {
    BASE_URL: 'http://localhost:3001/api',    // 更新为你的本地后端地址
    IMG_BASE_URL: 'http://localhost:3001',    // 更新为你的本地图片服务器地址
  },
  [ENV.TEST]: {
    BASE_URL: 'https://test-api.example.com/api', // 测试环境
    IMG_BASE_URL: 'https://test-api.example.com', // 测试环境图片服务器
  },
  [ENV.PROD]: {
    BASE_URL: 'https://api.example.com/api',      // 生产环境
    IMG_BASE_URL: 'https://api.example.com',      // 生产环境图片服务器
  }
};

// 导出当前环境的API配置
const config = {
  ENV_TYPE: ENV_TYPE,
  API_BASE_URL: API_CONFIG[ENV_TYPE].BASE_URL,
  IMG_BASE_URL: API_CONFIG[ENV_TYPE].IMG_BASE_URL,
  
  // API路径配置
  API: {
    // 首页相关
    HOME: {
      BANNER: '/miniapp/banners',                // 轮播图
    },
    // 用户相关
    USER: {
      LOGIN: '/miniapp/user/login',              // 登录
      INFO: '/miniapp/user/info',                // 用户信息
    },
    // 商品相关
    PRODUCT: {
      LIST: '/miniapp/products',                 // 商品列表（管理后台用）
      SEARCH: '/miniapp/products/search',        // 搜索商品（添加新的搜索API路径）
      RECOMMEND: '/miniapp/products/recommend',  // 推荐商品列表（首页用，区分于管理后台）
      DETAIL: '/miniapp/products/',              // 商品详情，需要拼接ID
    },
    // 搜索相关 - 添加搜索模块
    SEARCH: {
      HOT_KEYWORDS: '/miniapp/search/hot',       // 热门搜索词
      SUGGEST: '/miniapp/search/suggest',        // 搜索建议
    },
    // 分类相关
    CATEGORY: {
      LIST: '/miniapp/categories',               // 分类列表
      DETAIL: '/miniapp/categories/',            // 分类详情，需要拼接ID
      PRODUCTS: '/miniapp/categories/:id/products',  // 分类商品列表，新格式，需要替换:id
    },
    // 购物车相关
    CART: {
      LIST: '/miniapp/cart',                     // 购物车列表
      ADD: '/miniapp/cart',                      // 添加到购物车
      UPDATE_QUANTITY: '/miniapp/cart/:id/quantity',  // 更新购物车商品数量
      UPDATE_SELECTED: '/miniapp/cart/:id/selected',  // 更新购物车商品选中状态
      SELECT_ALL: '/miniapp/cart/selected/all',       // 全选/取消全选购物车商品
      DELETE: '/miniapp/cart/:id',               // 删除购物车商品
      COUNT: '/miniapp/cart/count',              // 购物车商品数量
    },
    // 订单相关
    ORDER: {
      LIST: '/miniapp/orders',
      CREATE: '/miniapp/orders',
      DETAIL: '/miniapp/orders/',
      CANCEL: '/miniapp/orders/:id/cancel',
      RECEIVE: '/miniapp/orders/:id/receive',
      PAY: '/miniapp/orders/:id/pay'
    }
  },
  
  // 微信小程序配置
  appid: 'wx8a1970001822c6c0', // 与后端环境变量MINIAPP_APPID保持一致
  
  // 网络请求超时时间（毫秒）
  timeout: 10000,
  
  // 商城相关配置 
  shop: {
    name: '优选商城',
    logo: '/static/images/logo.png',
    currency: '¥'
  },
  
  // 订单状态
  orderStatus: {
    PENDING_PAYMENT: 'pending',  // 待付款
    PENDING_DELIVERY: 'delivery', // 待发货
    DELIVERED: 'shipping',       // 待收货
    COMPLETED: 'completed',      // 已完成
    CANCELLED: 'canceled'        // 已取消
  }
};

module.exports = config; 